Electro-optical shaft encoders are often employed to indicate the angular position of a rotatable shaft by providing electrical output signals which are essentially the sine and cosine function of the extent of rotation of the input shaft. In such encoders, the shaft is typically associated with a rotatable disc that is ruled with alternately opaque and transparent radial sectors to provide a plurality of reticle cycles, where each cycle includes an opaque and a transparent sector. Analogous encoders can also be used to indicate the linear position of a translatable member associated with, for example, a translatable member ruled with a plurality of reticle cycles oriented perpendicularly to the member's direction of motion. The quadrature-phased sine and cosine signals are then processed to provide an indication of the extent and sense of shaft or member movement. Signal processing can be accomplished in a digital manner. It is desireable to provide an extremely high-resolution digital output indicating shaft position based on the sine and cosine output signals of an electro-optical encoder.
To accomplish digital signal processing of such output signals, it is known to first multiply both the sine and cosine signals by a stored digital representation of a function of output angular data. The resulting signals are then added so as to provide an error signal which is used to control a digital counter such that a digital output signal is provided that represents analog input angular data. The digital resolver of the invention includes an up-down counter, and a counter controller operative to receive the error signal and drive the counter accordingly. Within the counter controller, an error signal is typically used in conjunction with a clock signal to selectively activate an appropriate input of the up-down counter, the output of which is fed back to address the memory, also providing a digitized representation of the shaft's displacement within a reticle cycle.
However, employing a clock signal results in some critical limitations on the overall performance of the interpolator. For example, the maximum count rate is limited to the frequency of the clock source. If the count rate exceeds the clock rate, an error results. Also, unless the detector recognizes a non-zero error signal exactly when a clock cycle begins, counting is delayed until the beginning of the next clock cycle. Furthermore, if the angular velocity of the shaft is changing, or if it is constant but not an integral multiple of the clock frequency, more than a single cycle will be required to accurately represent a multiplication of the input frequency by the digital representation of a function of the output angular data. This appears to the user as "jittering" of the digital representation of the input analog signal from cycle to cycle. At low shaft velocities this effect is negligible; but, as the rate of rotation increases, jittering can become quite significant.